*** Replication files for Off, G. & Trastulli, F., "Who Prioritises What? Determinants and Measurement of Voters' Issue Prioritisation", EJPR ***

**# NOTE: contractually, we are not allowed to share SOEP data. We will still provide the syntax we have used for SOEP-related analyses.
**# NOTE: statistical significance levels in Figg. 2-6 and Figg. A1-A8 were manually edited by the As.
**# NOTE: the below syntax generating Figg. 2-5 should be referred to for the regression tables of Tables A1-A12 in the Appendix.
**# NOTE: the below syntax generating Fig. 6 (using relabelled SOEP data) should be referred to for the regression tables of Tables A14-A15 in the Appendix.

**# Preliminary
** set own cd
use "OffTrastulli_ICCP.dta"
set scheme s1mono
set graphics on

**# Figure 1
preserve
gen id = _n
keep id betternhs unemployment_prio crime_prio ecogrowth_prio immigration_prio pensions_prio envprot_prio taxspend_prio minimumwage_prio incinequality_prio gaymarriage_prio genquotas_prio
gen var1=betternhs
gen var2=unemployment_prio
gen var3=crime_prio
gen var4=ecogrowth_prio
gen var5=immigration_prio
gen var6=pensions_prio
gen var7=envprot_prio
gen var8=taxspend_prio
gen var9=minimumwage_prio
gen var10=incinequality_prio
gen var11=gaymarriage_prio
gen var12=genquotas_prio
reshape long var, i(id) j(priority)
drop if missing(var)
label define varlbl 1 "Low" 2 "Medium" 3 "High"
label values var varlbl
label define questionlabeled 1 "Healthcare (SE)" 2 "Unemployment (SE)" 3 "Crime (C)" 4 "Economic growth (SE)" 5 "Immigration (C)" 6 "Pensions (SE)" 7 "Environment (C)" 8 "Taxes (SE)" 9 "Minimum wage (SE)" 10 "Inequality reduction (SE)" 11 "Gay marriage (C)" 12 "Gender quotas (C)"
label values priority questionlabeled
contract priority var
gen total = .
bysort priority (var): replace total = sum(_freq)
bysort priority (var): replace total = total[_N]
gen percent = 100 * _freq / total
graph hbar (asis) percent, over(var) over(priority)  stack asyvars ///
    bar(1, color(gs12)) bar(2, color(gs8)) bar(3, color(black)) ///
	legend(rows(1) position(6)) ///
	note("Note: (SE): socioeconomic issue; (C): cultural issue.")
restore, preserve

**# Figure 2 (also refer to this syntax for Tables A1-A2)
eststo clear
eststo reg1: melogit immigration_prio_bin i.edu2_01 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg2: melogit immigration_prio_bin i.woman i.agegroup i.edu2_01 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg3: melogit genquotas_prio_bin i.edu2_02 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg4: melogit genquotas_prio_bin i.woman i.agegroup i.edu2_02 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg5: melogit gaymarriage_prio_bin i.edu2_03 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg6: melogit gaymarriage_prio_bin i.woman i.agegroup i.edu2_03 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg7: melogit crime_prio_bin i.edu2_04 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg8: melogit crime_prio_bin i.woman i.agegroup i.edu2_04 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg9: melogit environment_prio_bin i.edu2_05 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg10: melogit environment_prio_bin i.woman i.agegroup i.edu2_05 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
coefplot ///
(reg1, mcolor(gray) ciopts(lcolor(gray)) msymbol(D) offset(-0.07)) ///
(reg2, mcolor(black) ciopts(lcolor(black)) msymbol(D) offset(0.07)) ///
(reg3, mcolor(gray) ciopts(lcolor(gray)) msymbol(S) offset(-0.07)) ///
(reg4, mcolor(black) ciopts(lcolor(black)) msymbol(S) offset(0.07)) ///
(reg5, mcolor(gray) ciopts(lcolor(gray)) msymbol(O) offset(-0.07)) ///
(reg6, mcolor(black) ciopts(lcolor(black)) msymbol(O) offset(0.07)) ///
(reg7, mcolor(gray) ciopts(lcolor(gray)) msymbol(T) offset(-0.07)) ///
(reg8, mcolor(black) ciopts(lcolor(black)) msymbol(T) offset(0.07)) ///
(reg9, mcolor(gray) ciopts(lcolor(gray)) msymbol(Sh) offset(-0.07)) ///
(reg10, mcolor(black) ciopts(lcolor(black)) msymbol(Sh) offset(0.07)), ///
eform drop(_cons) grid(none) xline(1, lcolor(gs13)) xlabel(0 1 2 3) ///
keep(1.edu2_01 1.edu2_02 1.edu2_03 1.edu2_04 1.edu2_05) ///
 legend(off) ///
title("Cultural issue priority by tertiary education", size(medium)) ///
coeflabels(1.edu2_01="Immigration" 1.edu2_02="Gender quota" 1.edu2_03="Gay marriage" 1.edu2_04="Crime" 1.edu2_05="Environment") ///
note("Note: Grey estimates from bivariate regressions; black estimates from multivariate" "regressions. Multi-level logistic regressions, robust standard errors, survey weights apply." "Estimates are odds ratios." "*: p<0.05; **: p<0.01; ***: p<0.001.")
graph save Fig2_educultprio, replace
eststo clear
eststo reg1: mixed immigration_att i.woman i.agegroup i.edu2_01 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) || country_id:
eststo reg2: mixed genquotas_att i.woman i.agegroup i.edu2_02 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) || country_id:
eststo reg3: mixed gaymarriage_att i.woman i.agegroup i.edu2_03 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) || country_id:
coefplot (reg1, mcolor(black) ciopts(lcolor(black)) msymbol(D)) ///
(reg2, mcolor(black) ciopts(lcolor(black)) msymbol(S)) /// 
(reg3, mcolor(black) ciopts(lcolor(black)) msymbol(O)), ///
eform drop(_cons) keep(1.edu2_01 1.edu2_02 1.edu2_03) legend(off) xlabel(0 1 2 3 4) ///
title("Cultural issue attitudes by tertiary education", size(medium) color(black)) graphregion(color(white) lcolor(black)) ///
coeflabels(1.edu2_01="Against immigration" 1.edu2_02="Against gender quota" 1.edu2_03="Against gay marriage") ///
grid(none) offset(0) xline(1, lcolor(gs13)) note("Note: Multivariate multi-level linear regressions," "survey weights and robust standard errors apply." "*: p<0.05; **: p<0.01; ***: p<0.001.")
graph save Fig2_educultatt, replace
eststo clear
eststo reg1: melogit pensions_prio_bin i.edu2_01 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg2: melogit pensions_prio_bin i.woman i.agegroup i.edu2_01 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg3: melogit incinequality_prio_bin i.edu2_02  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg4: melogit incinequality_prio_bin i.woman i.agegroup i.edu2_02 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg5: melogit minimumwage_prio_bin i.edu2_03 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg6: melogit minimumwage_prio_bin i.woman i.agegroup i.edu2_03 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg7: melogit taxspend_prio_bin i.edu2_04 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg8: melogit taxspend_prio_bin i.woman i.agegroup i.edu2_04 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg9: melogit unemployment_prio_bin i.edu2_05 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg10: melogit unemployment_prio_bin i.woman i.agegroup i.edu2_05 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg11: melogit ecogrowth_prio_bin i.edu2_06 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg12: melogit ecogrowth_prio_bin i.woman i.agegroup i.edu2_06 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg13: melogit betternhs_prio_bin i.edu2_07 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg14: melogit betternhs_prio_bin i.woman i.agegroup i.edu2_07 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
coefplot ///
(reg1, mcolor(gray) ciopts(lcolor(gray)) msymbol(D) offset(-0.07)) ///
(reg2, mcolor(black) ciopts(lcolor(black)) msymbol(D) offset(0.07)) ///
(reg3, mcolor(gray) ciopts(lcolor(gray)) msymbol(S) offset(-0.07)) ///
(reg4, mcolor(black) ciopts(lcolor(black)) msymbol(S) offset(0.07)) ///
(reg5, mcolor(gray) ciopts(lcolor(gray)) msymbol(O) offset(-0.07)) ///
(reg6, mcolor(black) ciopts(lcolor(black)) msymbol(O) offset(0.07)) ///
(reg7, mcolor(gray) ciopts(lcolor(gray)) msymbol(T) offset(-0.07)) ///
(reg8, mcolor(black) ciopts(lcolor(black)) msymbol(T) offset(0.07)) ///
(reg9, mcolor(gray) ciopts(lcolor(gray)) msymbol(Sh) offset(-0.07)) ///
(reg10, mcolor(black) ciopts(lcolor(black)) msymbol(Sh) offset(0.07)) ///
(reg11, mcolor(gray) ciopts(lcolor(gray)) msymbol(Dh) offset(-0.07)) ///
(reg12, mcolor(black) ciopts(lcolor(black)) msymbol(Dh) offset(0.07)) ///
(reg13, mcolor(gray) ciopts(lcolor(gray)) msymbol(Th) offset(-0.07)) ///
(reg14, mcolor(black) ciopts(lcolor(black)) msymbol(Th) offset(0.07)), ///
eform drop(_cons) legend(off) grid(none)  xline(1, lcolor(gs13)) graphregion(color(white) lcolor(black)) xlabel(0 1 2 3) ///
keep(1.edu2_01 1.edu2_02 1.edu2_03 1.edu2_04 1.edu2_05 1.edu2_06 1.edu2_07) ///
title("Socioeconomic issue priority by tertiary education", size(medium)) ///
coeflabels(1.edu2_01="Pensions" 1.edu2_02="Inequality reduction" 1.edu2_03="Minimum wage" 1.edu2_04="Taxes f. soc. services" 1.edu2_05="Unemployment" 1.edu2_06="Economic growth" 1.edu2_07="Healthcare") ///
note("Note: Grey estimates from bivariate regressions; black estimates from" "multivariate regressions. Multi-level logistic regressions, robust standard" "errors, survey weights apply. Estimates are odds ratios." "*: p<0.05; **: p<0.01; ***: p<0.001.")
graph save Fig2_eduecoprio, replace
eststo clear
eststo reg1: mixed pensions_att i.woman i.agegroup i.edu2_01 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) || country_id:
eststo reg2: mixed incinequality_att i.woman i.agegroup i.edu2_02 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) || country_id:
eststo reg3: mixed minimumwage_att i.woman i.agegroup i.edu2_03 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) || country_id:
eststo reg4: mixed taxspend_att i.woman i.agegroup i.edu2_04 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) || country_id:
coefplot (reg1, mcolor(black) ciopts(lcolor(black)) msymbol(D)) ///
(reg2, mcolor(black) ciopts(lcolor(black)) msymbol(S)) ///
(reg3, mcolor(black) ciopts(lcolor(black)) msymbol(O)) ///
(reg4, mcolor(black) ciopts(lcolor(black)) msymbol(T)), ///
eform drop(_cons) grid(none) xline(1, lcolor(gs13)) legend(off) title("Socioeconomic issue attitudes by tertiary education", size(medium)) xlabel(0 1 2 3 4) ///
keep(1.edu2_01 1.edu2_02 1.edu2_03 1.edu2_04) ///
coeflabels(1.edu2_01="Against pensions" 1.edu2_02="Against inequal. reduc." 1.edu2_03="Against min. wage" 1.edu2_04="Against taxes") ///
  note("Note: Multivariate multi-level linear regressions," "survey weights and robust standard errors apply." "*: p<0.05; **: p<0.01; ***: p<0.001.")
graph save Fig2_eduecoatt, replace

**# Figure 3
eststo clear
eststo reg1: melogit immigration_prio_bin i.agegroup_01 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg2: melogit immigration_prio_bin i.woman i.agegroup_01 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg3: melogit genquotas_prio_bin i.agegroup_02 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg4: melogit genquotas_prio_bin i.woman i.agegroup_02 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg5: melogit gaymarriage_prio_bin i.agegroup_03 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg6: melogit gaymarriage_prio_bin i.woman i.agegroup_03 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg7: melogit crime_prio_bin i.agegroup_04 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg8: melogit crime_prio_bin i.woman i.agegroup_04 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg9: melogit environment_prio_bin i.agegroup_05 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg10: melogit environment_prio_bin i.woman i.agegroup_05 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
coefplot ///
(reg1, mcolor(gray) ciopts(lcolor(gray)) msymbol(D) offset(-0.07)) ///
(reg2, mcolor(black) ciopts(lcolor(black)) msymbol(D) offset(0.07)) ///
(reg3, mcolor(gray) ciopts(lcolor(gray)) msymbol(S) offset(-0.07)) ///
(reg4, mcolor(black) ciopts(lcolor(black)) msymbol(S) offset(0.07)) ///
(reg5, mcolor(gray) ciopts(lcolor(gray)) msymbol(O) offset(-0.07)) ///
(reg6, mcolor(black) ciopts(lcolor(black)) msymbol(O) offset(0.07)) ///
(reg7, mcolor(gray) ciopts(lcolor(gray)) msymbol(T) offset(-0.07)) ///
(reg8, mcolor(black) ciopts(lcolor(black)) msymbol(T) offset(0.07)) ///
(reg9, mcolor(gray) ciopts(lcolor(gray)) msymbol(Sh) offset(-0.07)) ///
(reg10, mcolor(black) ciopts(lcolor(black)) msymbol(Sh) offset(0.07)), ///
eform drop(_cons) grid(none) xline(1, lcolor(gs13)) ///
keep(2.agegroup_01 2.agegroup_02 2.agegroup_03 2.agegroup_04 2.agegroup_05 3.agegroup_01 3.agegroup_02 3.agegroup_03 3.agegroup_04 3.agegroup_05) ///
legend(off) xlabel(0 1 2 3) ///
title("Cultural issue priority by age group", size(medium)) ///
coeflabels(2.agegroup_01="Middle-aged: Immigration" 3.agegroup_01="Young: Immigration" 2.agegroup_02=" Middle-aged: Gender quota" 3.agegroup_02=" Young: Gender quota" 2.agegroup_03=" Middle-aged: Gay marriage" 3.agegroup_03="Young: Gay marriage" 2.agegroup_04=" Middle-aged: Crime" 3.agegroup_04="Young: Crime" 2.agegroup_05=" Middle-aged: Environment" 3.agegroup_05="Young: Environment") ///
note("Note: Grey estimates from bivariate regressions; black estimates from" "multivariate regressions. Multi-level logistic regressions, robust standard" "errors, survey weights apply. Estimates are odds ratios." "Middle-aged: born 1960-1979, young: born 1980-, reference category:" "born before 1960." "*: p<0.05; **: p<0.01; ***: p<0.001.")
graph save Fig3_agecultprio, replace
eststo clear
eststo reg1: mixed immigration_att i.woman i.agegroup_01 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) || country_id:
eststo reg2: mixed genquotas_att i.woman i.agegroup_02 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) || country_id:
eststo reg3: mixed gaymarriage_att i.woman i.agegroup_03 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) || country_id:
coefplot (reg1, mcolor(black) ciopts(lcolor(black)) msymbol(D)) (reg2, mcolor(black) ciopts(lcolor(black)) msymbol(S)) (reg3, mcolor(black) ciopts(lcolor(black)) msymbol(O)), ///
eform drop(_cons) grid(none) xline(1, lcolor(gs13)) xlabel(0 1 2 3 4) ///
keep(2.agegroup_01 2.agegroup_02 2.agegroup_03 3.agegroup_01 3.agegroup_02 3.agegroup_03) legend(off) title("Cultural issue attitudes by age group", size(medium)) ///
coeflabels(2.agegroup_01="Middle-aged: Against immigration" 2.agegroup_02="Middle-aged: Against gender quota" 2.agegroup_03="Middle-aged: Against gay marriage" 3.agegroup_01="Young: Against immigration" 3.agegroup_02="Young: Against gender quota" 3.agegroup_03="Young: Against gay marriage") ///
note("Note: Multivariate multi-level linear regressions," "survey weights and robust standard errors apply." "Middle-aged: born 1960-1979, young: born 1980-," "reference category: born before 1960." "*: p<0.05; **: p<0.01; ***: p<0.001.")
graph save Fig3_agecultatt, replace
eststo clear
eststo reg1: melogit pensions_prio_bin i.agegroup_01 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg2: melogit pensions_prio_bin i.woman i.agegroup_01 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg3: melogit incinequality_prio_bin i.agegroup_02  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg4: melogit incinequality_prio_bin i.woman i.agegroup_02 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg5: melogit minimumwage_prio_bin i.agegroup_03 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg6: melogit minimumwage_prio_bin i.woman i.agegroup_03 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg7: melogit taxspend_prio_bin i.agegroup_04 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg8: melogit taxspend_prio_bin i.woman i.agegroup_04 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg9: melogit unemployment_prio_bin i.agegroup_05 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg10: melogit unemployment_prio_bin i.woman i.agegroup_05 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg11: melogit ecogrowth_prio_bin i.agegroup_06 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg12: melogit ecogrowth_prio_bin i.woman i.agegroup_06 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg13: melogit betternhs_prio_bin i.agegroup_07 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg14: melogit betternhs_prio_bin i.woman i.agegroup_07 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
coefplot ///
(reg1, mcolor(gray) ciopts(lcolor(gray)) msymbol(D) offset(-0.07)) ///
(reg2, mcolor(black) ciopts(lcolor(black)) msymbol(D) offset(0.07)) ///
(reg3, mcolor(gray) ciopts(lcolor(gray)) msymbol(S) offset(-0.07)) ///
(reg4, mcolor(black) ciopts(lcolor(black)) msymbol(S) offset(0.07)) ///
(reg5, mcolor(gray) ciopts(lcolor(gray)) msymbol(O) offset(-0.07)) ///
(reg6, mcolor(black) ciopts(lcolor(black)) msymbol(O) offset(0.07)) ///
(reg7, mcolor(gray) ciopts(lcolor(gray)) msymbol(T) offset(-0.07)) ///
(reg8, mcolor(black) ciopts(lcolor(black)) msymbol(T) offset(0.07)) ///
(reg9, mcolor(gray) ciopts(lcolor(gray)) msymbol(Sh) offset(-0.07)) ///
(reg10, mcolor(black) ciopts(lcolor(black)) msymbol(Sh) offset(0.07)) ///
(reg11, mcolor(gray) ciopts(lcolor(gray)) msymbol(Dh) offset(-0.07)) ///
(reg12, mcolor(black) ciopts(lcolor(black)) msymbol(Dh) offset(0.07)) ///
(reg13, mcolor(gray) ciopts(lcolor(gray)) msymbol(Th) offset(-0.07)) ///
(reg14, mcolor(black) ciopts(lcolor(black)) msymbol(Th) offset(0.07)), ///
eform drop(_cons) legend(off) grid(none)  xline(1, lcolor(gs13)) graphregion(color(white) lcolor(black)) xlabel(0 1 2 3) ///
keep(2.agegroup_01 2.agegroup_02 2.agegroup_03 2.agegroup_04 2.agegroup_05 2.agegroup_06 2.agegroup_07 3.agegroup_01 3.agegroup_02 3.agegroup_03 3.agegroup_04 3.agegroup_05 3.agegroup_06 3.agegroup_07) ///
title("Socioeconomic issue priority by age group", size(medium)) ///
coeflabels(2.agegroup_01="Middle-aged: Pensions" 3.agegroup_01="Young: Pensions" 2.agegroup_02="Middle-aged: Inequality reduction" 3.agegroup_02="Young: Inequality reduction" 2.agegroup_03="Middle-aged: Minimum wage" 3.agegroup_03="Young: Minimum wage" 2.agegroup_04="Middle-aged: Taxes f. soc. services" 3.agegroup_04="Young: Taxes f. soc. services" 2.agegroup_05="Middle-aged: Unemployment" 3.agegroup_05="Young: Unemployment" 2.agegroup_06="Middle-aged: Econ. growth" 3.agegroup_06="Young: Econ. growth" 2.agegroup_07="Middle-aged: Healthcare" 3.agegroup_07="Young: Healthcare") ///
note("Note: Grey estimates: bivariate regressions; black estimates:" "multivariate regressions. Multi-level logistic regressions, robust" "standard errors, survey weights apply. Estimates are odds ratios." "Middle-aged: born 1960-1979, young: born 1980-, reference" "category: born before 1960." "*: p<0.05; **: p<0.01; ***: p<0.001.")
graph save Fig3_ageecoprio, replace
eststo clear
eststo reg1: mixed pensions_att i.woman i.agegroup_01 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) || country_id:
eststo reg2: mixed incinequality_att i.woman i.agegroup_02 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) || country_id:
eststo reg3: mixed minimumwage_att i.woman i.agegroup_03 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) || country_id:
eststo reg4: mixed taxspend_att i.woman i.agegroup_04 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) || country_id:
coefplot (reg1, mcolor(black) ciopts(lcolor(black)) msymbol(D)) (reg2, mcolor(black) ciopts(lcolor(black)) msymbol(S)) (reg3, mcolor(black) ciopts(lcolor(black)) msymbol(O)) (reg4, mcolor(black) ciopts(lcolor(black)) msymbol(T)), ///
eform drop(_cons) grid(none) xline(1, lcolor(gs13)) legend(off) xlabel(0 1 2 3 4) ///
keep(2.agegroup_01 2.agegroup_02 2.agegroup_03 2.agegroup_04 3.agegroup_01 3.agegroup_02 3.agegroup_03 3.agegroup_04) ///  
title("Socioeconomic issue attitudes by age group", size(medium)) ///
coeflabels(2.agegroup_01="Middle-aged: Against pensions" 2.agegroup_02="Middle-aged: Against inequal. reduc." 2.agegroup_03="Middle-aged: Against min. wage" 2.agegroup_04="Middle-aged: Against taxes" 3.agegroup_01="Young: Against pensions" 3.agegroup_02="Young: Against inequal. reduc." 3.agegroup_03="Young: Against min. wage" 3.agegroup_04="Young: Against taxes") ///
note("Note: Multivariate multi-level linear regressions," "survey weights and robust standard errors apply." "Middle-aged: born 1960-1979, young: born 1980-," "reference category: born before 1960." "*: p<0.05; **: p<0.01; ***: p<0.001.")
graph save Fig3_ageecoatt, replace

**# Figure 4
eststo clear
eststo reg1: melogit immigration_prio_bin i.woman_01 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg2: melogit immigration_prio_bin i.woman_01 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg3: melogit genquotas_prio_bin i.woman_02 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg4: melogit genquotas_prio_bin i.woman_02 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg5: melogit gaymarriage_prio_bin i.woman_03 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg6: melogit gaymarriage_prio_bin i.woman_03 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg7: melogit crime_prio_bin i.woman_04 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg8: melogit crime_prio_bin i.woman_04 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg9: melogit environment_prio_bin i.woman_05 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg10: melogit environment_prio_bin i.woman_05 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
coefplot ///
(reg1, mcolor(gray) ciopts(lcolor(gray)) msymbol(D) offset(-0.07)) ///
(reg2, mcolor(black) ciopts(lcolor(black)) msymbol(D) offset(0.07)) ///
(reg3, mcolor(gray) ciopts(lcolor(gray)) msymbol(S) offset(-0.07)) ///
(reg4, mcolor(black) ciopts(lcolor(black)) msymbol(S) offset(0.07)) ///
(reg5, mcolor(gray) ciopts(lcolor(gray)) msymbol(O) offset(-0.07)) ///
(reg6, mcolor(black) ciopts(lcolor(black)) msymbol(O) offset(0.07)) ///
(reg7, mcolor(gray) ciopts(lcolor(gray)) msymbol(T) offset(-0.07)) ///
(reg8, mcolor(black) ciopts(lcolor(black)) msymbol(T) offset(0.07)) ///
(reg9, mcolor(gray) ciopts(lcolor(gray)) msymbol(Sh) offset(-0.07)) ///
(reg10, mcolor(black) ciopts(lcolor(black)) msymbol(Sh) offset(0.07)), ///
eform drop(_cons) grid(none) xline(1, lcolor(gs13)) ///
keep(1.woman_01 1.woman_02 1.woman_03 1.woman_04 1.woman_05) ///
legend(off) xlabel(0 1 2 3) ///
title("Women's cultural issue priority", size(medium)) ///
coeflabels(1.woman_01="Immigration" 1.woman_02="Gender quota" 1.woman_03="Gay marriage" 1.woman_04="Crime" 1.woman_05="Environment") ///
note("Note: Grey estimates from bivariate regressions; black estimates from multivariate" "regressions. Multi-level logistic regressions, robust standard errors, survey weights apply." "Estimates are odds ratios." "*: p<0.05; **: p<0.01; ***: p<0.001.")
graph save Fig4_gendcultprio, replace
eststo clear
eststo reg1: mixed immigration_att i.woman_01 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) || country_id:
eststo reg2: mixed genquotas_att i.woman_02 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) || country_id:
eststo reg3: mixed gaymarriage_att i.woman_03 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) || country_id:
coefplot (reg1, mcolor(black) ciopts(lcolor(black)) msymbol(D)) (reg2, mcolor(black) ciopts(lcolor(black)) msymbol(S)) (reg3, mcolor(black) ciopts(lcolor(black)) msymbol(O)), ///
eform drop(_cons) keep(1.woman_01 1.woman_02 1.woman_03) legend(off) title("Women's cultural issue attitudes", size(medium) color(black)) graphregion(color(white) lcolor(black)) xlabel(0 1 2 3 4) /// 
coeflabels(1.woman_01="Against immigration" 1.woman_02="Against gender quota" 1.woman_03="Against gay marriage") grid(none) offset(0) xline(1, lcolor(gs13)) note("Note: Multivariate multi-level linear regressions," "survey weights and robust standard errors apply." "*: p<0.05; **: p<0.01; ***: p<0.001.")
graph save Fig4_gendcultatt, replace
eststo clear
eststo reg1: melogit pensions_prio_bin i.woman_01 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg2: melogit pensions_prio_bin i.woman_01 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg3: melogit incinequality_prio_bin i.woman_02  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg4: melogit incinequality_prio_bin i.woman_02 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg5: melogit minimumwage_prio_bin i.woman_03 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg6: melogit minimumwage_prio_bin i.woman_03 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg7: melogit taxspend_prio_bin i.woman_04 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg8: melogit taxspend_prio_bin i.woman_04 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg9: melogit unemployment_prio_bin i.woman_05 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg10: melogit unemployment_prio_bin i.woman_05 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg11: melogit ecogrowth_prio_bin i.woman_06 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg12: melogit ecogrowth_prio_bin i.woman_06 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg13: melogit betternhs_prio_bin i.woman_07 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg14: melogit betternhs_prio_bin i.woman_07 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
coefplot ///
(reg1, mcolor(gray) ciopts(lcolor(gray)) msymbol(D) offset(-0.07)) ///
(reg2, mcolor(black) ciopts(lcolor(black)) msymbol(D) offset(0.07)) ///
(reg3, mcolor(gray) ciopts(lcolor(gray)) msymbol(S) offset(-0.07)) ///
(reg4, mcolor(black) ciopts(lcolor(black)) msymbol(S) offset(0.07)) ///
(reg5, mcolor(gray) ciopts(lcolor(gray)) msymbol(O) offset(-0.07)) ///
(reg6, mcolor(black) ciopts(lcolor(black)) msymbol(O) offset(0.07)) ///
(reg7, mcolor(gray) ciopts(lcolor(gray)) msymbol(T) offset(-0.07)) ///
(reg8, mcolor(black) ciopts(lcolor(black)) msymbol(T) offset(0.07)) ///
(reg9, mcolor(gray) ciopts(lcolor(gray)) msymbol(Sh) offset(-0.07)) ///
(reg10, mcolor(black) ciopts(lcolor(black)) msymbol(Sh) offset(0.07)) ///
(reg11, mcolor(gray) ciopts(lcolor(gray)) msymbol(Dh) offset(-0.07)) ///
(reg12, mcolor(black) ciopts(lcolor(black)) msymbol(Dh) offset(0.07)) ///
(reg13, mcolor(gray) ciopts(lcolor(gray)) msymbol(Th) offset(-0.07)) ///
(reg14, mcolor(black) ciopts(lcolor(black)) msymbol(Th) offset(0.07)), ///
eform drop(_cons) legend(off) grid(none)  xline(1, lcolor(gs13)) graphregion(color(white) lcolor(black)) xlabel(0 1 2 3) ///
keep(1.woman_01 1.woman_02 1.woman_03 1.woman_04 1.woman_05 1.woman_06 1.woman_07) ///
title("Women's socioeconomic issue priority", size(medium)) ///
coeflabels(1.woman_01="Pensions" 1.woman_02="Inequality reduction" 1.woman_03="Minimum wage" 1.woman_04="Taxes f. soc. services" 1.woman_05="Unemployment" 1.woman_06="Economic growth" 1.woman_07="Healthcare") ///
note("Note: Grey estimates from bivariate regressions; black estimates from" "multivariate regressions. Multi-level logistic regressions, robust standard" "errors, survey weights apply. Estimates are odds ratios." "*: p<0.05; **: p<0.01; ***: p<0.001.")
graph save Fig4_gendecoprio, replace
eststo clear
eststo reg1: mixed pensions_att i.woman_01 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) || country_id:
eststo reg2: mixed incinequality_att i.woman_02 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) || country_id:
eststo reg3: mixed minimumwage_att i.woman_03 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) || country_id:
eststo reg4: mixed taxspend_att i.woman_04 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) || country_id:
coefplot (reg1, mcolor(black) ciopts(lcolor(black)) msymbol(D)) ///
(reg2, mcolor(black) ciopts(lcolor(black)) msymbol(S)) ///
(reg3, mcolor(black) ciopts(lcolor(black)) msymbol(O)) ///
(reg4, mcolor(black) ciopts(lcolor(black)) msymbol(T)), ///
eform drop(_cons) keep(1.woman_01 1.woman_02 1.woman_03 1.woman_04) legend(off) title("Women's socioeconomic issue attitudes", size(medium)) ///
coeflabels(1.woman_01="Against pensions" 1.woman_02="Against inequal. reduc." 1.woman_03="Against min. wage" 1.woman_04="Against taxes") grid(none) xline(1, lcolor(gs13)) xlabel (0 1 2 3 4) ///
 note("Note: Multivariate multi-level linear regressions," "survey weights and robust standard errors apply." "*: p<0.05; **: p<0.01; ***: p<0.001.")
graph save Fig4_gendecoatt, replace

**# Figure 5
eststo clear
eststo reg1: melogit immigration_prio_bin livstand_rs_01 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg2: melogit immigration_prio_bin i.woman i.agegroup i.edu2 livstand_rs_01 ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg3: melogit genquotas_prio_bin livstand_rs_02 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg4: melogit genquotas_prio_bin i.woman i.agegroup i.edu2 livstand_rs_02 ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg5: melogit gaymarriage_prio_bin livstand_rs_03 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg6: melogit gaymarriage_prio_bin i.woman i.agegroup i.edu2 livstand_rs_03 ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg7: melogit crime_prio_bin livstand_rs_04 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg8: melogit crime_prio_bin i.woman i.agegroup i.edu2 livstand_rs_04 ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg9: melogit environment_prio_bin livstand_rs_05 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg10: melogit environment_prio_bin i.woman i.agegroup i.edu2 livstand_rs_05 ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
coefplot ///
(reg1, mcolor(gray) ciopts(lcolor(gray)) msymbol(D) offset(-0.07)) ///
(reg2, mcolor(black) ciopts(lcolor(black)) msymbol(D) offset(0.07)) ///
(reg3, mcolor(gray) ciopts(lcolor(gray)) msymbol(S) offset(-0.07)) ///
(reg4, mcolor(black) ciopts(lcolor(black)) msymbol(S) offset(0.07)) ///
(reg5, mcolor(gray) ciopts(lcolor(gray)) msymbol(O) offset(-0.07)) ///
(reg6, mcolor(black) ciopts(lcolor(black)) msymbol(O) offset(0.07)) ///
(reg7, mcolor(gray) ciopts(lcolor(gray)) msymbol(T) offset(-0.07)) ///
(reg8, mcolor(black) ciopts(lcolor(black)) msymbol(T) offset(0.07)) ///
(reg9, mcolor(gray) ciopts(lcolor(gray)) msymbol(Sh) offset(-0.07)) ///
(reg10, mcolor(black) ciopts(lcolor(black)) msymbol(Sh) offset(0.07)), ///
eform drop(_cons) grid(none) xline(1, lcolor(gs13)) xlabel(0 1 2 3) ///
keep(livstand_rs_01 livstand_rs_02 livstand_rs_03 livstand_rs_04 livstand_rs_05) ///
legend(off) ///
title("Cultural issue priority by living std.", size(medium)) ///
coeflabels(livstand_rs_01="Immigration" livstand_rs_02="Gender quota" livstand_rs_03="Gay marriage" livstand_rs_04="Crime" livstand_rs_05="Environment") ///
note("Note: Grey estimates from bivariate regressions; black estimates from multivariate" "regressions. Multi-level logistic regressions, robust standard errors, survey weights apply." "Estimates are odds ratios." "*: p<0.05; **: p<0.01; ***: p<0.001.")
graph save Fig5_livstdcultprio, replace
eststo clear
eststo reg1: mixed immigration_att i.woman i.agegroup i.edu2 livstand_rs_01 ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) || country_id:
eststo reg2: mixed genquotas_att i.woman i.agegroup i.edu2 livstand_rs_02 ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) || country_id:
eststo reg3: mixed gaymarriage_att i.woman i.agegroup i.edu2 livstand_rs_03 ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) || country_id:
coefplot (reg1, mcolor(black) ciopts(lcolor(black)) msymbol(D)) ///
(reg2, mcolor(black) ciopts(lcolor(black)) msymbol(S)) /// 
(reg3, mcolor(black) ciopts(lcolor(black)) msymbol(O)), ///
eform drop(_cons) keep(livstand_rs_01 livstand_rs_02 livstand_rs_03) legend(off) xlabel(0 1 2 3 4) ///
title("Cultural issue attitudes by living standard", size(medium) color(black)) graphregion(color(white) lcolor(black)) coeflabels(livstand_rs_01="Against immigration" livstand_rs_02="Against gender quota" livstand_rs_03="Against gay marriage") ///
grid(none) offset(0) xline(1, lcolor(gs13)) note("Note: Multivariate multi-level linear regressions," "survey weights and robust standard errors apply." "*: p<0.05; **: p<0.01; ***: p<0.001.")
graph save Fig5_livstdcultatt, replace
eststo clear
eststo reg1: melogit pensions_prio_bin livstand_rs_01 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg2: melogit pensions_prio_bin i.woman i.agegroup i.edu2 livstand_rs_01 ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg3: melogit incinequality_prio_bin livstand_rs_02  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg4: melogit incinequality_prio_bin i.woman i.agegroup i.edu2 livstand_rs_02 ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg5: melogit minimumwage_prio_bin livstand_rs_03 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg6: melogit minimumwage_prio_bin i.woman i.agegroup i.edu2 livstand_rs_03 ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg7: melogit taxspend_prio_bin livstand_rs_04 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg8: melogit taxspend_prio_bin i.woman i.agegroup i.edu2 livstand_rs_04 ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg9: melogit unemployment_prio_bin livstand_rs_05 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg10: melogit unemployment_prio_bin i.woman i.agegroup i.edu2 livstand_rs_05 ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg11: melogit ecogrowth_prio_bin livstand_rs_06 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg12: melogit ecogrowth_prio_bin i.woman i.agegroup i.edu2 livstand_rs_06 ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg13: melogit betternhs_prio_bin livstand_rs_07 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg14: melogit betternhs_prio_bin i.woman i.agegroup i.edu2 livstand_rs_07 ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
coefplot ///
(reg1, mcolor(gray) ciopts(lcolor(gray)) msymbol(D) offset(-0.07)) ///
(reg2, mcolor(black) ciopts(lcolor(black)) msymbol(D) offset(0.07)) ///
(reg3, mcolor(gray) ciopts(lcolor(gray)) msymbol(S) offset(-0.07)) ///
(reg4, mcolor(black) ciopts(lcolor(black)) msymbol(S) offset(0.07)) ///
(reg5, mcolor(gray) ciopts(lcolor(gray)) msymbol(O) offset(-0.07)) ///
(reg6, mcolor(black) ciopts(lcolor(black)) msymbol(O) offset(0.07)) ///
(reg7, mcolor(gray) ciopts(lcolor(gray)) msymbol(T) offset(-0.07)) ///
(reg8, mcolor(black) ciopts(lcolor(black)) msymbol(T) offset(0.07)) ///
(reg9, mcolor(gray) ciopts(lcolor(gray)) msymbol(Sh) offset(-0.07)) ///
(reg10, mcolor(black) ciopts(lcolor(black)) msymbol(Sh) offset(0.07)) ///
(reg11, mcolor(gray) ciopts(lcolor(gray)) msymbol(Dh) offset(-0.07)) ///
(reg12, mcolor(black) ciopts(lcolor(black)) msymbol(Dh) offset(0.07)) ///
(reg13, mcolor(gray) ciopts(lcolor(gray)) msymbol(Th) offset(-0.07)) ///
(reg14, mcolor(black) ciopts(lcolor(black)) msymbol(Th) offset(0.07)), ///
eform drop(_cons) legend(off) grid(none)  xline(1, lcolor(gs13)) graphregion(color(white) lcolor(black)) xlabel(0 1 2 3) ///
keep(livstand_rs_01 livstand_rs_02 livstand_rs_03 livstand_rs_04 livstand_rs_05 livstand_rs_06 livstand_rs_07) ///
title("Socioeconomic issue priority by living std.", size(medium)) ///
coeflabels(livstand_rs_01="Pensions" livstand_rs_02="Inequality reduction" livstand_rs_03="Minimum wage" livstand_rs_04="Taxes f. soc. services" livstand_rs_05="Unemployment" livstand_rs_06="Economic growth" livstand_rs_07="Healthcare") ///
note("Note: Grey estimates from bivariate regressions; black estimates from" "multivariate regressions. Multi-level logistic regressions, robust standard" "errors, survey weights apply. Estimates are odds ratios." "*: p<0.05; **: p<0.01; ***: p<0.001.")
graph save Fig5_livstdecoprio, replace
eststo clear
eststo reg1: mixed pensions_att i.woman i.agegroup i.edu2 livstand_rs_01 ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) || country_id:
eststo reg2: mixed incinequality_att i.woman i.agegroup i.edu2 livstand_rs_02 ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) || country_id:
eststo reg3: mixed minimumwage_att i.woman i.agegroup i.edu2 livstand_rs_03 ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) || country_id:
eststo reg4: mixed taxspend_att i.woman i.agegroup i.edu2 livstand_rs_04 ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) || country_id:
coefplot (reg1, mcolor(black) ciopts(lcolor(black)) msymbol(D)) ///
(reg2, mcolor(black) ciopts(lcolor(black)) msymbol(S)) ///
(reg3, mcolor(black) ciopts(lcolor(black)) msymbol(O)) ///
(reg4, mcolor(black) ciopts(lcolor(black)) msymbol(T)), ///
eform drop(_cons) grid(none) xline(1, lcolor(gs13)) legend(off) title("Socioeconomic issue attitudes by living standard", size(medium)) xlabel(0 1 2 3 4 5 6) ///
keep(livstand_rs_01 livstand_rs_02 livstand_rs_03 livstand_rs_04) ///
coeflabels(livstand_rs_01="Against pensions" livstand_rs_02="Against inequal. reduc." livstand_rs_03="Against min. wage" livstand_rs_04="Against taxes") ///
  note("Note: Multivariate multi-level linear regressions," "survey weights and robust standard errors apply." "*: p<0.05; **: p<0.01; ***: p<0.001.")
graph save Fig5_livstdecoatt, replace

**# Figure 6 – NOTE: this uses relabelled SOEP data.
/*
gen log_income_01 = log_income
gen log_income_02 = log_income
gen log_income_03 = log_income
gen log_income_04 = log_income
gen log_income_05 = log_income
eststo clear
sort pid time_period
eststo reg1: xtlogit ecodevel d.log_income_01 l.ecodevel ib(0).agegroup ib(0).higher_educ ib(1).polint4 i.syear, or fe vce(bootstrap) 
sort pid time_period
eststo reg2: xtlogit jobsec d.log_income_02 l.jobsec ib(0).agegroup ib(0).higher_educ ib(1).polint4 i.syear, or fe vce(bootstrap) 
sort pid time_period
eststo reg3: xtlogit environment d.log_income_03 l.environment ib(0).agegroup ib(0).higher_educ ib(1).polint4 i.syear, or fe vce(bootstrap)
sort pid time_period
eststo reg4: xtlogit crime d.log_income_04 l.crime ib(0).agegroup ib(0).higher_educ ib(1).polint4 i.syear, or fe vce(bootstrap) 
eststo reg5: xtlogit immig d.log_income_05 l.immig ib(0).agegroup ib(0).higher_educ ib(1).polint4 i.syear, or fe vce(bootstrap) 
coefplot (reg1, mcolor(black) ciopts(lcolor(black))) (reg2, mcolor(black) ciopts(lcolor(black))) (reg3, mcolor(black) ciopts(lcolor(black))) (reg4, mcolor(black) ciopts(lcolor(black))) (reg5, mcolor(black) ciopts(lcolor(black))), eform drop(_cons) keep(D.log_income_01 D.log_income_02 D.log_income_03 D.log_income_04 D.log_income_05) legend(off) title("Changes in income and issue priority", size(medsmall) color(black)) graphregion(color(white) lcolor(black)) coeflabels(D.log_income_01="Eco. devel." D.log_income_02="Job security" D.log_income_03="Environment" D.log_income_04="Crime" D.log_income_05="Immigration") grid(none) offset(0) xline(1, lcolor(gs13) lpattern(dash))

gen lr_01 = lr
gen lr_02 = lr
gen lr_03 = lr
gen lr_04 = lr
gen lr_05 = lr
eststo clear
sort pid time_period
eststo reg1: xtlogit ecodevel d.lr_01 l.ecodevel ib(0).agegroup ib(0).higher_educ ib(1).polint4 i.syear, or fe vce(bootstrap) 
sort pid time_period
eststo reg2: xtlogit jobsec d.lr_02 l.jobsec ib(0).agegroup ib(0).higher_educ ib(1).polint4 i.syear, or fe vce(bootstrap) 
sort pid time_period
eststo reg3: xtlogit environment d.lr_03 l.environment ib(0).agegroup ib(0).higher_educ ib(1).polint4 i.syear, or fe vce(bootstrap) 
sort pid time_period
eststo reg4: xtlogit crime d.lr_04 l.crime ib(0).agegroup ib(0).higher_educ ib(1).polint4 i.syear, or fe vce(bootstrap) 
eststo reg5: xtlogit immig d.lr_05 immig_lag ib(0).agegroup ib(0).higher_educ ib(1).polint4 i.syear, or fe vce(bootstrap) 
coefplot (reg1, mcolor(black) ciopts(lcolor(black))) (reg2, mcolor(black) ciopts(lcolor(black))) (reg3, mcolor(black) ciopts(lcolor(black))) (reg4, mcolor(black) ciopts(lcolor(black))) (reg5, mcolor(black) ciopts(lcolor(black))), eform drop(_cons) keep(D.lr_01 D.lr_02 D.lr_03 D.lr_04 D.lr_05) legend(off) title("Changes in left-right self-placement and issue priority", size(medsmall) color(black)) graphregion(color(white) lcolor(black)) coeflabels(D.lr_01="Eco. devel." D.lr_02="Job security" D.lr_03="Environment" D.lr_04="Crime" D.lr_05="Immigration") grid(none) offset(0) xline(1, lcolor(gs13) lpattern(dash))
*/

**# Appendix, Section 3 (ICCP): Figg. A1-A8
eststo clear
eststo reg1: meologit immigration_prio i.edu2_01 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg2: meologit immigration_prio i.woman i.agegroup i.edu2_01 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg3: meologit genquotas_prio i.edu2_02 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg4: meologit genquotas_prio i.woman i.agegroup i.edu2_02 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg5: meologit gaymarriage_prio i.edu2_03 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg6: meologit gaymarriage_prio i.woman i.agegroup i.edu2_03 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg7: meologit crime_prio i.edu2_04 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg8: meologit crime_prio i.woman i.agegroup i.edu2_04 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg9: meologit envprot_prio i.edu2_05 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg10: meologit envprot_prio i.woman i.agegroup i.edu2_05 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
coefplot ///
(reg1, mcolor(gray) ciopts(lcolor(gray)) msymbol(D) offset(-0.07)) ///
(reg2, mcolor(black) ciopts(lcolor(black)) msymbol(D) offset(0.07)) ///
(reg3, mcolor(gray) ciopts(lcolor(gray)) msymbol(S) offset(-0.07)) ///
(reg4, mcolor(black) ciopts(lcolor(black)) msymbol(S) offset(0.07)) ///
(reg5, mcolor(gray) ciopts(lcolor(gray)) msymbol(O) offset(-0.07)) ///
(reg6, mcolor(black) ciopts(lcolor(black)) msymbol(O) offset(0.07)) ///
(reg7, mcolor(gray) ciopts(lcolor(gray)) msymbol(T) offset(-0.07)) ///
(reg8, mcolor(black) ciopts(lcolor(black)) msymbol(T) offset(0.07)) ///
(reg9, mcolor(gray) ciopts(lcolor(gray)) msymbol(Sh) offset(-0.07)) ///
(reg10, mcolor(black) ciopts(lcolor(black)) msymbol(Sh) offset(0.07)), ///
eform drop(_cons) grid(none) xline(1, lcolor(gs13)) xlabel(0 1 2 3) ///
keep(1.edu2_01 1.edu2_02 1.edu2_03 1.edu2_04 1.edu2_05) ///
 legend(off) ///
title("Cultural issue priority by tertiary education", size(medium)) ///
coeflabels(1.edu2_01="Immigration" 1.edu2_02="Gender quota" 1.edu2_03="Gay marriage" 1.edu2_04="Crime" 1.edu2_05="Environment") ///
note("Note: Grey estimates from bivariate regressions; black estimates from multivariate" "regressions. Multi-level ordered logistic regressions, robust standard errors," "survey weights apply. Estimates are odds ratios." "*: p<0.05; **: p<0.01; ***: p<0.001.")
graph save FigA1, replace
eststo clear
eststo reg1: meologit pensions_prio i.edu2_01 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg2: meologit pensions_prio i.woman i.agegroup i.edu2_01 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg3: meologit incinequality_prio i.edu2_02  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg4: meologit incinequality_prio i.woman i.agegroup i.edu2_02 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg5: meologit minimumwage_prio i.edu2_03 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg6: meologit minimumwage_prio i.woman i.agegroup i.edu2_03 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg7: meologit taxspend_prio i.edu2_04 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg8: meologit taxspend_prio i.woman i.agegroup i.edu2_04 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg9: meologit unemployment_prio i.edu2_05 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg10: meologit unemployment_prio i.woman i.agegroup i.edu2_05 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg11: meologit ecogrowth_prio i.edu2_06 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg12: meologit ecogrowth_prio i.woman i.agegroup i.edu2_06 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg13: meologit betternhs i.edu2_07 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg14: meologit betternhs i.woman i.agegroup i.edu2_07 livstand_rs ib(3).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
coefplot ///
(reg1, mcolor(gray) ciopts(lcolor(gray)) msymbol(D) offset(-0.07)) ///
(reg2, mcolor(black) ciopts(lcolor(black)) msymbol(D) offset(0.07)) ///
(reg3, mcolor(gray) ciopts(lcolor(gray)) msymbol(S) offset(-0.07)) ///
(reg4, mcolor(black) ciopts(lcolor(black)) msymbol(S) offset(0.07)) ///
(reg5, mcolor(gray) ciopts(lcolor(gray)) msymbol(O) offset(-0.07)) ///
(reg6, mcolor(black) ciopts(lcolor(black)) msymbol(O) offset(0.07)) ///
(reg7, mcolor(gray) ciopts(lcolor(gray)) msymbol(T) offset(-0.07)) ///
(reg8, mcolor(black) ciopts(lcolor(black)) msymbol(T) offset(0.07)) ///
(reg9, mcolor(gray) ciopts(lcolor(gray)) msymbol(Sh) offset(-0.07)) ///
(reg10, mcolor(black) ciopts(lcolor(black)) msymbol(Sh) offset(0.07)) ///
(reg11, mcolor(gray) ciopts(lcolor(gray)) msymbol(Dh) offset(-0.07)) ///
(reg12, mcolor(black) ciopts(lcolor(black)) msymbol(Dh) offset(0.07)) ///
(reg13, mcolor(gray) ciopts(lcolor(gray)) msymbol(Th) offset(-0.07)) ///
(reg14, mcolor(black) ciopts(lcolor(black)) msymbol(Th) offset(0.07)), ///
eform drop(_cons) legend(off) grid(none)  xline(1, lcolor(gs13)) graphregion(color(white) lcolor(black)) xlabel(0 1 2 3) ///
keep(1.edu2_01 1.edu2_02 1.edu2_03 1.edu2_04 1.edu2_05 1.edu2_06 1.edu2_07) ///
title("Socioeconomic issue priority by tert. education", size(medium)) ///
coeflabels(1.edu2_01="Pensions" 1.edu2_02="Inequality reduction" 1.edu2_03="Minimum wage" 1.edu2_04="Taxes f. soc. services" 1.edu2_05="Unemployment" 1.edu2_06="Economic growth" 1.edu2_07="Healthcare") ///
note("Note: Grey estimates from bivariate regressions; black estimates from" "multivariate regressions. Multi-level ordered logistic regressions," "robust standard errors, survey weights apply. Estimates are odds ratios." "*: p<0.05; **: p<0.01; ***: p<0.001.")
graph save FigA2, replace
eststo clear
eststo reg1: meologit immigration_prio i.agegroup_01 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg2: meologit immigration_prio i.woman i.agegroup_01 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg3: meologit genquotas_prio i.agegroup_02 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg4: meologit genquotas_prio i.woman i.agegroup_02 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg5: meologit gaymarriage_prio i.agegroup_03 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg6: meologit gaymarriage_prio i.woman i.agegroup_03 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg7: meologit crime_prio i.agegroup_04 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg8: meologit crime_prio i.woman i.agegroup_04 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg9: meologit envprot_prio i.agegroup_05 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg10: meologit envprot_prio i.woman i.agegroup_05 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
coefplot ///
(reg1, mcolor(gray) ciopts(lcolor(gray)) msymbol(D) offset(-0.07)) ///
(reg2, mcolor(black) ciopts(lcolor(black)) msymbol(D) offset(0.07)) ///
(reg3, mcolor(gray) ciopts(lcolor(gray)) msymbol(S) offset(-0.07)) ///
(reg4, mcolor(black) ciopts(lcolor(black)) msymbol(S) offset(0.07)) ///
(reg5, mcolor(gray) ciopts(lcolor(gray)) msymbol(O) offset(-0.07)) ///
(reg6, mcolor(black) ciopts(lcolor(black)) msymbol(O) offset(0.07)) ///
(reg7, mcolor(gray) ciopts(lcolor(gray)) msymbol(T) offset(-0.07)) ///
(reg8, mcolor(black) ciopts(lcolor(black)) msymbol(T) offset(0.07)) ///
(reg9, mcolor(gray) ciopts(lcolor(gray)) msymbol(Sh) offset(-0.07)) ///
(reg10, mcolor(black) ciopts(lcolor(black)) msymbol(Sh) offset(0.07)), ///
eform drop(_cons) grid(none) xline(1, lcolor(gs13)) ///
keep(2.agegroup_01 2.agegroup_02 2.agegroup_03 2.agegroup_04 2.agegroup_05 3.agegroup_01 3.agegroup_02 3.agegroup_03 3.agegroup_04 3.agegroup_05) ///
legend(off) xlabel(0 1 2 3) ///
title("Cultural issue priority by age group", size(medium)) ///
coeflabels(2.agegroup_01="Middle-aged: Immigration" 3.agegroup_01="Young: Immigration" 2.agegroup_02=" Middle-aged: Gender quota" 3.agegroup_02=" Young: Gender quota" 2.agegroup_03=" Middle-aged: Gay marriage" 3.agegroup_03="Young: Gay marriage" 2.agegroup_04=" Middle-aged: Crime" 3.agegroup_04="Young: Crime" 2.agegroup_05=" Middle-aged: Environment" 3.agegroup_05="Young: Environment") ///
note("Note: Grey estimates from bivariate regressions; black estimates from" "multivariate regressions. Multi-level ordered logistic regressions," "robust standard errors, survey weights apply." "Estimates are odds ratios. Middle-aged: born 1960-1979," "young: born 1980-, reference category: born before 1960." "*: p<0.05; **: p<0.01; ***: p<0.001.")
graph save FigA3, replace
eststo clear
eststo reg1: meologit pensions_prio i.agegroup_01 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg2: meologit pensions_prio i.woman i.agegroup_01 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg3: meologit incinequality_prio i.agegroup_02  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg4: meologit incinequality_prio i.woman i.agegroup_02 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg5: meologit minimumwage_prio i.agegroup_03 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg6: meologit minimumwage_prio i.woman i.agegroup_03 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg7: meologit taxspend_prio i.agegroup_04 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg8: meologit taxspend_prio i.woman i.agegroup_04 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg9: meologit unemployment_prio i.agegroup_05 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg10: meologit unemployment_prio i.woman i.agegroup_05 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg11: meologit ecogrowth_prio i.agegroup_06 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg12: meologit ecogrowth_prio i.woman i.agegroup_06 i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg13: meologit betternhs i.agegroup_07 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg14: meologit betternhs i.woman i.agegroup_07 i.edu2 livstand_rs ib(3).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
coefplot ///
(reg1, mcolor(gray) ciopts(lcolor(gray)) msymbol(D) offset(-0.07)) ///
(reg2, mcolor(black) ciopts(lcolor(black)) msymbol(D) offset(0.07)) ///
(reg3, mcolor(gray) ciopts(lcolor(gray)) msymbol(S) offset(-0.07)) ///
(reg4, mcolor(black) ciopts(lcolor(black)) msymbol(S) offset(0.07)) ///
(reg5, mcolor(gray) ciopts(lcolor(gray)) msymbol(O) offset(-0.07)) ///
(reg6, mcolor(black) ciopts(lcolor(black)) msymbol(O) offset(0.07)) ///
(reg7, mcolor(gray) ciopts(lcolor(gray)) msymbol(T) offset(-0.07)) ///
(reg8, mcolor(black) ciopts(lcolor(black)) msymbol(T) offset(0.07)) ///
(reg9, mcolor(gray) ciopts(lcolor(gray)) msymbol(Sh) offset(-0.07)) ///
(reg10, mcolor(black) ciopts(lcolor(black)) msymbol(Sh) offset(0.07)) ///
(reg11, mcolor(gray) ciopts(lcolor(gray)) msymbol(Dh) offset(-0.07)) ///
(reg12, mcolor(black) ciopts(lcolor(black)) msymbol(Dh) offset(0.07)) ///
(reg13, mcolor(gray) ciopts(lcolor(gray)) msymbol(Th) offset(-0.07)) ///
(reg14, mcolor(black) ciopts(lcolor(black)) msymbol(Th) offset(0.07)), ///
eform drop(_cons) legend(off) grid(none)  xline(1, lcolor(gs13)) graphregion(color(white) lcolor(black)) xlabel(0 1 2 3) ///
keep(2.agegroup_01 2.agegroup_02 2.agegroup_03 2.agegroup_04 2.agegroup_05 2.agegroup_06 2.agegroup_07 3.agegroup_01 3.agegroup_02 3.agegroup_03 3.agegroup_04 3.agegroup_05 3.agegroup_06 3.agegroup_07) ///
title("Socioeconomic issue priority by age group", size(medium)) ///
coeflabels(2.agegroup_01="Middle-aged: Pensions" 3.agegroup_01="Young: Pensions" 2.agegroup_02="Middle-aged: Inequality reduction" 3.agegroup_02="Young: Inequality reduction" 2.agegroup_03="Middle-aged: Minimum wage" 3.agegroup_03="Young: Minimum wage" 2.agegroup_04="Middle-aged: Taxes f. soc. services" 3.agegroup_04="Young: Taxes f. soc. services" 2.agegroup_05="Middle-aged: Unemployment" 3.agegroup_05="Young: Unemployment" 2.agegroup_06="Middle-aged: Econ. growth" 3.agegroup_06="Young: Econ. growth" 2.agegroup_07="Middle-aged: Healthcare" 3.agegroup_07="Young: Healthcare") ///
note("Note: Grey estimates from bivariate regressions; black estimates from" "multivariate regressions. Multi-level ordered logistic regressions," "robust standard errors, survey weights apply." "Estimates are odds ratios. Middle-aged: born 1960-1979," "young: born 1980-, reference category: born before 1960." "*: p<0.05; **: p<0.01; ***: p<0.001.")
graph save FigA4, replace
eststo clear
eststo reg1: meologit immigration_prio i.woman_01 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg2: meologit immigration_prio i.woman_01 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg3: meologit genquotas_prio i.woman_02 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg4: meologit genquotas_prio i.woman_02 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg5: meologit gaymarriage_prio i.woman_03 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg6: meologit gaymarriage_prio i.woman_03 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg7: meologit crime_prio i.woman_04 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg8: meologit crime_prio i.woman_04 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg9: meologit envprot_prio i.woman_05 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg10: meologit envprot_prio i.woman_05 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
coefplot ///
(reg1, mcolor(gray) ciopts(lcolor(gray)) msymbol(D) offset(-0.07)) ///
(reg2, mcolor(black) ciopts(lcolor(black)) msymbol(D) offset(0.07)) ///
(reg3, mcolor(gray) ciopts(lcolor(gray)) msymbol(S) offset(-0.07)) ///
(reg4, mcolor(black) ciopts(lcolor(black)) msymbol(S) offset(0.07)) ///
(reg5, mcolor(gray) ciopts(lcolor(gray)) msymbol(O) offset(-0.07)) ///
(reg6, mcolor(black) ciopts(lcolor(black)) msymbol(O) offset(0.07)) ///
(reg7, mcolor(gray) ciopts(lcolor(gray)) msymbol(T) offset(-0.07)) ///
(reg8, mcolor(black) ciopts(lcolor(black)) msymbol(T) offset(0.07)) ///
(reg9, mcolor(gray) ciopts(lcolor(gray)) msymbol(Sh) offset(-0.07)) ///
(reg10, mcolor(black) ciopts(lcolor(black)) msymbol(Sh) offset(0.07)), ///
eform drop(_cons) grid(none) xline(1, lcolor(gs13)) ///
keep(1.woman_01 1.woman_02 1.woman_03 1.woman_04 1.woman_05) ///
legend(off) xlabel(0 1 2 3) ///
title("Women's cultural issue priority", size(medium)) ///
coeflabels(1.woman_01="Immigration" 1.woman_02="Gender quota" 1.woman_03="Gay marriage" 1.woman_04="Crime" 1.woman_05="Environment") ///
note("Note: Grey estimates from bivariate regressions; black estimates from multivariate" "regressions. Multi-level ordered logistic regressions, robust standard errors," "survey weights apply. Estimates are odds ratios." "*: p<0.05; **: p<0.01; ***: p<0.001.")
graph save FigA5, replace
eststo clear
eststo reg1: meologit pensions_prio i.woman_01 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg2: meologit pensions_prio i.woman_01 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg3: meologit incinequality_prio i.woman_02  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg4: meologit incinequality_prio i.woman_02 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg5: meologit minimumwage_prio i.woman_03 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg6: meologit minimumwage_prio i.woman_03 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg7: meologit taxspend_prio i.woman_04 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg8: meologit taxspend_prio i.woman_04 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg9: meologit unemployment_prio i.woman_05 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg10: meologit unemployment_prio i.woman_05 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg11: meologit ecogrowth_prio i.woman_06 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg12: meologit ecogrowth_prio i.woman_06 i.agegroup i.edu2 livstand_rs ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg13: meologit betternhs i.woman_07 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg14: meologit betternhs i.woman_07 i.agegroup i.edu2 livstand_rs ib(3).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
coefplot ///
(reg1, mcolor(gray) ciopts(lcolor(gray)) msymbol(D) offset(-0.07)) ///
(reg2, mcolor(black) ciopts(lcolor(black)) msymbol(D) offset(0.07)) ///
(reg3, mcolor(gray) ciopts(lcolor(gray)) msymbol(S) offset(-0.07)) ///
(reg4, mcolor(black) ciopts(lcolor(black)) msymbol(S) offset(0.07)) ///
(reg5, mcolor(gray) ciopts(lcolor(gray)) msymbol(O) offset(-0.07)) ///
(reg6, mcolor(black) ciopts(lcolor(black)) msymbol(O) offset(0.07)) ///
(reg7, mcolor(gray) ciopts(lcolor(gray)) msymbol(T) offset(-0.07)) ///
(reg8, mcolor(black) ciopts(lcolor(black)) msymbol(T) offset(0.07)) ///
(reg9, mcolor(gray) ciopts(lcolor(gray)) msymbol(Sh) offset(-0.07)) ///
(reg10, mcolor(black) ciopts(lcolor(black)) msymbol(Sh) offset(0.07)) ///
(reg11, mcolor(gray) ciopts(lcolor(gray)) msymbol(Dh) offset(-0.07)) ///
(reg12, mcolor(black) ciopts(lcolor(black)) msymbol(Dh) offset(0.07)) ///
(reg13, mcolor(gray) ciopts(lcolor(gray)) msymbol(Th) offset(-0.07)) ///
(reg14, mcolor(black) ciopts(lcolor(black)) msymbol(Th) offset(0.07)), ///
eform drop(_cons) legend(off) grid(none)  xline(1, lcolor(gs13)) graphregion(color(white) lcolor(black)) xlabel(0 1 2 3) ///
keep(1.woman_01 1.woman_02 1.woman_03 1.woman_04 1.woman_05 1.woman_06 1.woman_07) ///
title("Women's socioeconomic issue priority", size(medium)) ///
coeflabels(1.woman_01="Pensions" 1.woman_02="Inequality reduction" 1.woman_03="Minimum wage" 1.woman_04="Taxes for social services" 1.woman_05="Unemployment" 1.woman_06="Economic growth" 1.woman_07="Healthcare") ///
note("Note: Grey estimates from bivariate regressions; black estimates from" "multivariate regressions. Multi-level ordered logistic regressions," "robust standard errors, survey weights apply. Estimates are odds ratios." "*: p<0.05; **: p<0.01; ***: p<0.001.")
graph save FigA6, replace
eststo clear
eststo reg1: meologit immigration_prio livstand_rs_01 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg2: meologit immigration_prio i.woman i.agegroup i.edu2 livstand_rs_01 ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg3: meologit genquotas_prio livstand_rs_02 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg4: meologit genquotas_prio i.woman i.agegroup i.edu2 livstand_rs_02 ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg5: meologit gaymarriage_prio livstand_rs_03 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg6: meologit gaymarriage_prio i.woman i.agegroup i.edu2 livstand_rs_03 ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg7: meologit crime_prio livstand_rs_04 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg8: meologit crime_prio i.woman i.agegroup i.edu2 livstand_rs_04 ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg9: meologit envprot_prio livstand_rs_05 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg10: meologit envprot_prio i.woman i.agegroup i.edu2 livstand_rs_05 ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
coefplot ///
(reg1, mcolor(gray) ciopts(lcolor(gray)) msymbol(D) offset(-0.07)) ///
(reg2, mcolor(black) ciopts(lcolor(black)) msymbol(D) offset(0.07)) ///
(reg3, mcolor(gray) ciopts(lcolor(gray)) msymbol(S) offset(-0.07)) ///
(reg4, mcolor(black) ciopts(lcolor(black)) msymbol(S) offset(0.07)) ///
(reg5, mcolor(gray) ciopts(lcolor(gray)) msymbol(O) offset(-0.07)) ///
(reg6, mcolor(black) ciopts(lcolor(black)) msymbol(O) offset(0.07)) ///
(reg7, mcolor(gray) ciopts(lcolor(gray)) msymbol(T) offset(-0.07)) ///
(reg8, mcolor(black) ciopts(lcolor(black)) msymbol(T) offset(0.07)) ///
(reg9, mcolor(gray) ciopts(lcolor(gray)) msymbol(Sh) offset(-0.07)) ///
(reg10, mcolor(black) ciopts(lcolor(black)) msymbol(Sh) offset(0.07)), ///
eform drop(_cons) grid(none) xline(1, lcolor(gs13)) xlabel(0 1 2 3) ///
keep(livstand_rs_01 livstand_rs_02 livstand_rs_03 livstand_rs_04 livstand_rs_05) ///
legend(off) ///
title("Cultural issue priority by living standards", size(medium)) ///
coeflabels(livstand_rs_01="Immigration" livstand_rs_02="Gender quota" livstand_rs_03="Gay marriage" livstand_rs_04="Crime" livstand_rs_05="Environment") ///
note("Note: Grey estimates from bivariate regressions; black estimates from multivariate" "regressions. Multi-level ordered logistic regressions, robust standard errors, survey weights apply." "Estimates are odds ratios.")
graph save FigA7, replace
eststo clear
eststo reg1: meologit pensions_prio livstand_rs_01 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg2: meologit pensions_prio i.woman i.agegroup i.edu2 livstand_rs_01 ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg3: meologit incinequality_prio livstand_rs_02  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg4: meologit incinequality_prio i.woman i.agegroup i.edu2 livstand_rs_02 ib(0).polint ib(2).ecoretro3  [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg5: meologit minimumwage_prio livstand_rs_03 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg6: meologit minimumwage_prio i.woman i.agegroup i.edu2 livstand_rs_03 ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg7: meologit taxspend_prio livstand_rs_04 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg8: meologit taxspend_prio i.woman i.agegroup i.edu2 livstand_rs_04 ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg9: meologit unemployment_prio livstand_rs_05 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg10: meologit unemployment_prio i.woman i.agegroup i.edu2 livstand_rs_05 ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg11: meologit ecogrowth_prio livstand_rs_06 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg12: meologit ecogrowth_prio i.woman i.agegroup i.edu2 livstand_rs_06 ib(0).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg13: meologit betternhs livstand_rs_07 [pweight=wdempol_trim], vce(robust) or || country_id:
eststo reg14: meologit betternhs i.woman i.agegroup i.edu2 livstand_rs_07 ib(3).polint ib(2).ecoretro3 [pweight=wdempol_trim], vce(robust) or || country_id:
coefplot ///
(reg1, mcolor(gray) ciopts(lcolor(gray)) msymbol(D) offset(-0.07)) ///
(reg2, mcolor(black) ciopts(lcolor(black)) msymbol(D) offset(0.07)) ///
(reg3, mcolor(gray) ciopts(lcolor(gray)) msymbol(S) offset(-0.07)) ///
(reg4, mcolor(black) ciopts(lcolor(black)) msymbol(S) offset(0.07)) ///
(reg5, mcolor(gray) ciopts(lcolor(gray)) msymbol(O) offset(-0.07)) ///
(reg6, mcolor(black) ciopts(lcolor(black)) msymbol(O) offset(0.07)) ///
(reg7, mcolor(gray) ciopts(lcolor(gray)) msymbol(T) offset(-0.07)) ///
(reg8, mcolor(black) ciopts(lcolor(black)) msymbol(T) offset(0.07)) ///
(reg9, mcolor(gray) ciopts(lcolor(gray)) msymbol(Sh) offset(-0.07)) ///
(reg10, mcolor(black) ciopts(lcolor(black)) msymbol(Sh) offset(0.07)) ///
(reg11, mcolor(gray) ciopts(lcolor(gray)) msymbol(Dh) offset(-0.07)) ///
(reg12, mcolor(black) ciopts(lcolor(black)) msymbol(Dh) offset(0.07)) ///
(reg13, mcolor(gray) ciopts(lcolor(gray)) msymbol(Th) offset(-0.07)) ///
(reg14, mcolor(black) ciopts(lcolor(black)) msymbol(Th) offset(0.07)), ///
eform drop(_cons) legend(off) grid(none)  xline(1, lcolor(gs13)) graphregion(color(white) lcolor(black)) xlabel(0 1 2 3) ///
keep(livstand_rs_01 livstand_rs_02 livstand_rs_03 livstand_rs_04 livstand_rs_05 livstand_rs_06 livstand_rs_07) ///
title("Socioeconomic issue priority by living std.", size(medium)) ///
coeflabels(livstand_rs_01="Pensions" livstand_rs_02="Inequality reduction" livstand_rs_03="Minimum wage" livstand_rs_04="Taxes f. soc. services" livstand_rs_05="Unemployment" livstand_rs_06="Economic growth" livstand_rs_07="Healthcare") ///
note("Note: Grey estimates from bivariate regressions; black estimates from" "multivariate regressions. Multi-level ordered logistic regressions, robust standard" "errors, survey weights apply. Estimates are odds ratios." "*: p<0.05; **: p<0.01; ***: p<0.001.")
graph save FigA8, replace

**# Appendix, Section 4 (SOEP) – NOTE: this uses relabelled SOEP data.
/*
* Table A13
sum log_income, d
sum lr, d

* Figure A9 (below + manual editing)
hist dincome_pid_resc, percent norm addl

* Figure A10 (below + manual editing)
hist dlr_pid, percent norm addl start(-10.5) width(0.5)
/*
